package com.ruoyi.platform.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 用户发票信息对象 t_invoice_info
 * 
 * @author ruoyi
 * @date 2025-08-19
 */
public class TInvoiceInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 发票ID，自增主键 */
    private Long invoiceId;

    /** 用户ID，关联t_user_info表 */
    @Excel(name = "用户ID，关联t_user_info表")
    private Long userId;

    /** 发票抬头 */
    @Excel(name = "发票抬头")
    private String invoiceName;

    /** 纳税人识别号 */
    @Excel(name = "纳税人识别号")
    private String taxNumber;

    /** 公司地址 */
    @Excel(name = "公司地址")
    private String companyAddress;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phoneNumber;

    /** 开户银行 */
    @Excel(name = "开户银行")
    private String bankName;

    /** 银行账号 */
    @Excel(name = "银行账号")
    private String bankAccount;

    /** 联系人姓名 */
    @Excel(name = "联系人姓名")
    private String contactName;

    /** 联系人电话 */
    @Excel(name = "联系人电话")
    private String contactPhone;

    /** 联系地区 */
    @Excel(name = "联系地区")
    private String contactRegion;

    /** 联系地址 */
    @Excel(name = "联系地址")
    private String contactAddress;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date modifyTime;

    public void setInvoiceId(Long invoiceId) 
    {
        this.invoiceId = invoiceId;
    }

    public Long getInvoiceId() 
    {
        return invoiceId;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setInvoiceName(String invoiceName) 
    {
        this.invoiceName = invoiceName;
    }

    public String getInvoiceName() 
    {
        return invoiceName;
    }

    public void setTaxNumber(String taxNumber) 
    {
        this.taxNumber = taxNumber;
    }

    public String getTaxNumber() 
    {
        return taxNumber;
    }

    public void setCompanyAddress(String companyAddress) 
    {
        this.companyAddress = companyAddress;
    }

    public String getCompanyAddress() 
    {
        return companyAddress;
    }

    public void setPhoneNumber(String phoneNumber) 
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() 
    {
        return phoneNumber;
    }

    public void setBankName(String bankName) 
    {
        this.bankName = bankName;
    }

    public String getBankName() 
    {
        return bankName;
    }

    public void setBankAccount(String bankAccount) 
    {
        this.bankAccount = bankAccount;
    }

    public String getBankAccount() 
    {
        return bankAccount;
    }

    public void setContactName(String contactName) 
    {
        this.contactName = contactName;
    }

    public String getContactName() 
    {
        return contactName;
    }

    public void setContactPhone(String contactPhone) 
    {
        this.contactPhone = contactPhone;
    }

    public String getContactPhone() 
    {
        return contactPhone;
    }

    public void setContactRegion(String contactRegion) 
    {
        this.contactRegion = contactRegion;
    }

    public String getContactRegion() 
    {
        return contactRegion;
    }

    public void setContactAddress(String contactAddress) 
    {
        this.contactAddress = contactAddress;
    }

    public String getContactAddress() 
    {
        return contactAddress;
    }

    public void setModifyTime(Date modifyTime) 
    {
        this.modifyTime = modifyTime;
    }

    public Date getModifyTime() 
    {
        return modifyTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("invoiceId", getInvoiceId())
            .append("userId", getUserId())
            .append("invoiceName", getInvoiceName())
            .append("taxNumber", getTaxNumber())
            .append("companyAddress", getCompanyAddress())
            .append("phoneNumber", getPhoneNumber())
            .append("bankName", getBankName())
            .append("bankAccount", getBankAccount())
            .append("contactName", getContactName())
            .append("contactPhone", getContactPhone())
            .append("contactRegion", getContactRegion())
            .append("contactAddress", getContactAddress())
            .append("modifyTime", getModifyTime())
            .toString();
    }
}
